#include<bits/stdc++.h>
using namespace std;
typedef long long ll;

int n,m;
struct stu{
	int v,id;
}a[100005];
int id=1e9,mi=1e9;
int ef(int w){
	int l=1,r=n;
	while(l<r){
		int mid=(l+r)>>1;
		if(a[mid].v>w){
			r=mid;
		}
		else if(a[mid].v==w){
			while(mid-1>0&&a[mid-1].v==w){
				mid--;
			}
			return a[mid].id;
		}
		else l=mid+1;
		if(abs(a[mid].v-w<=mi)&&id>mid){
			mi=a[mid].v,id=mid;
		}
		if(abs(a[l].v-w<=mi)&&id>l){
					mi=a[l].v,id=l;
				}
		if(abs(a[r].v-w<=mi)&&id>r){
					mi=a[r].v,id=r;
				}
	}
	return 0;
}
void solve()
{
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		cin>>a[i].v;
		a[i].id=i;
	}
	sort(a+1,a+1+n,[&](stu a,stu b){
		if(a.v==b.v) return a.id<b.id;
		return a.v<b.v;
	});
	mi=1e9,id=n;
	while(m--){
		int w;
		cin>>w;
		if(ef(w)==0){
			cout<<id<<" ";
		}
		else{
			cout<<ef(w)<<" ";
		}
	}
}

int main()
{
	std::ios::sync_with_stdio(false);
	std::cin.tie(0),cout.tie(0);
	int t=1;
//	cin>>t;
	while(t--)
		solve();
	return 0;
}
